package com.luoc;

import com.luoc.service.AbstractClass;
import com.luoc.service.impl.ConcreteClass;

/**
 * @Author: luoc
 * @Date: 2019/10/10 16:51
 * 模版模式
 * 模板方法模式：定义一个操作中算法的框架，而将一些步骤延迟到子类中。
 * 模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
 * Template Method Pattern:  Define the skeleton of an algorithm in an  operation,
 * deferring some steps to subclasses. Template Method lets 
 * subclasses redefine certain steps of an algorithm without changing the  algorithm's structure.

 */
public class TemplateMethodPattern {

    public static void main(String[] args) {
        AbstractClass abstractClass = new ConcreteClass();
        abstractClass.A();
        abstractClass.B();
        abstractClass.C();
    }
}
